#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/wait.h>
int main()
{
    printf("程序开始运行...\n");
    pid_t id = fork();
    if(id == 0)
    {
        printf("子进程，pid：%d\n", getpid());
        
        char* const argv[] = {
            "ls", "-l", "-a", NULL
        };
        execvp(argv[0], argv);
        //execv("/usr/bin/ls", argv);

        //execlp("ls", "ls", "-ln", "-a", NULL);

        // execl("/usr/bin/ls", "ls", "-a", "-l", NULL);
        execl("./code", "code", NULL);
        exit(1);
    }
    waitpid(-1, NULL, 0);
    //waitpid(id, NULL, 0);
    printf("程序运行结束...\n");
}


//int main()
//{
//    printf("程序开始运行...\n");
//    execl("/usr/bin/ls", "ls", "-a", "-l", NULL);
//    printf("程序运行结束...\n");
//    return 0;
//}
